package com.wellsoft.pt.app.dingtalk.service;

import com.wellsoft.pt.app.dingtalk.dao.MultiOrgDingDeptDao;
import com.wellsoft.pt.app.dingtalk.entity.MultiOrgDingDept;
import com.wellsoft.pt.jpa.service.JpaService;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

/**
 * Description: 钉钉部门信息service
 * 
 * @author bryanlin
 * @date 2020年5月18日
 * @version 1.0
 * 
 *          <pre>
 * 修改记录:
 * 修改后版本	修改人		修改日期			修改内容
 * 2020年5月18日.1	bryanlin		2020年5月18日  	Create
 *          </pre>
 *
 */
public interface MultiOrgDingDeptService extends JpaService<MultiOrgDingDept, MultiOrgDingDeptDao, String> {
	
	/**
	 * 钉钉事件回调，同步部门操作
	 * 
	 * @param deptIds
	 *            部门id集合
	 * @param eventType
	 *            事件类型
	 */
	public void saveDeptFromDingtalkEventCallBack(JSONArray deptIds, String eventType);
	
	/**
	 * 新增部门数据
	 * @param deptId
	 * @param accessToken
	 * @param eventType
	 */
	public void iterateAddMultiOrgDingDept(String deptId, String accessToken, String eventType);
	
	/**
	 * 拉取所有钉钉部门数据到平台
	 * @param currentDept
	 * @param allDepts
	 */
	public void fetchDeptFromDingtalk(JSONObject currentDept, int order, JSONArray allDepts);
}
